package com.training.java.redbox;

import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.springframework.web.context.WebApplicationContext;
import org.springframework.web.context.support.WebApplicationContextUtils;

import com.training.java.redbox.domain.Movie;
import com.training.java.redbox.service.MovieService;

public class ListMoviesAction extends Action {
	
	@Override
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
		WebApplicationContext context = WebApplicationContextUtils.getRequiredWebApplicationContext(getServlet().getServletContext());
		MovieService service = context.getBean(MovieService.class);
		
		List<Movie> movies = service.getAllMovies();
		
		request.setAttribute("movies", movies);
		
		return mapping.findForward("list");
	}

}
